import java.util.Arrays;

public class Solution {
    public int hIndex(int[] citations) {
        Arrays.sort(citations);
        int n = citations.length;
        int h = 0;

        // 从后向前遍历数组
        for (int i = 0; i < n; i++) {
            // 计算当前可能的H指数
            int possibleH = n - i;
            // 如果当前引用数大于等于可能的H指数，则更新H指数
            if (citations[i] >= possibleH) {
                return possibleH;
            }
        }
        return 0;
    }
}
